/*
 *    Copyright (c) 2018-2025, fanxl All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the pig4cloud.com developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 * Author: fanxl (wangiegie@gmail.com)
 */

package com.snow4cloud.common.model.admin.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.time.LocalDateTime;

/**
 * 销售机会表
 *
 * @author pig code generator
 * @date 2021-03-23 15:35:27
 */
@Data
@TableName("crm_opportunity")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "销售机会表")
public class Opportunity extends Model<Opportunity> {
private static final long serialVersionUID = 1L;

    /**
     * 销售机会ID
     */
	@TableId(type = IdType.INPUT)
    @ApiModelProperty(value="销售机会ID")
    private String id;
    /**
     * 销售机会名称
     */
    @ApiModelProperty(value="销售机会名称")
    private String opportunityName;
    /**
     * 拼音简码
     */
    @ApiModelProperty(value="拼音简码")
    private String singleCode;
    /**
     * 客户ID
     */
    @ApiModelProperty(value="客户ID")
    private String accountId;
    /**
     * 机会类型
     */
    @ApiModelProperty(value="机会类型")
    private String opportunityType;
    /**
     * 成功概率
     */
    @ApiModelProperty(value="成功概率")
    private String successProbability;
    /**
     * 丢单原因
     */
    @ApiModelProperty(value="丢单原因")
    private String throwReason;
    /**
     * 预计收入
     */
    @ApiModelProperty(value="预计收入")
    private BigDecimal expectedEarnings;
    /**
     * 实际收入
     */
    @ApiModelProperty(value="实际收入")
    private BigDecimal actualEarnings;
    /**
     * 明细总计
     */
    @ApiModelProperty(value="明细总计")
    private BigDecimal detailsTotalAmount;
    /**
     * 预期完成日期
     */
    @ApiModelProperty(value="预期完成日期")
    private LocalDateTime expectedDate;
    /**
     * 实际完成日期
     */
    @ApiModelProperty(value="实际完成日期")
    private LocalDateTime actualDate;
    /**
     * 线索来源
     */
    @ApiModelProperty(value="线索来源")
    private String leadOriginal;
    /**
     * 市场营销ID
     */
    @ApiModelProperty(value="市场营销ID")
    private String marketActId;
    /**
     * 状态
     */
    @ApiModelProperty(value="状态")
    private String status;
    /**
     * 备注
     */
    @ApiModelProperty(value="备注")
    private String remark;
    /**
     * 创建时间
     */
    @ApiModelProperty(value="创建时间")
    private LocalDateTime createDate;
    /**
     * 修改时间
     */
    @ApiModelProperty(value="修改时间")
    private LocalDateTime modifyDate;
    }
